/**
 *  一个插件可以是一个拥有 install() 方法的对象，也可以直接是一个安装函数本身。
 * 安装函数会接收到安装它的应用实例和传递给 app.use() 的额外选项作为参数：
*/
export default {
    install: (app, options) => {

        /**
         * app 当前的vue实例
         * options == app.use() 第二个参数 也就是插件的配置相
         */


        // 注入一个全局可用的 $translate() 方法
        app.config.globalProperties.$translate = (key) => {
            // 获取 `options` 对象的深层属性
            // 使用 `key` 作为索引
            return key.split('.').reduce((o, i) => {
                if (o) return o[i]
            }, options)
        }

        // 插件也可以通过  Provide / Inject 方法 注册在全局使用
    }
}